package com.youlai.boot.system.model.form;

import java.io.Serial;
import java.io.Serializable;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;

import jakarta.validation.constraints.*;

/**
 * 订单管理表单对象
 *
 * @author zhangyurun
 * @since 2025-03-20 20:33
 */
@Getter
@Setter
@Schema(description = "订单管理表单对象")
public class OrderForm implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "主键ID")
    private Long id;

    @Schema(description = "用户id")
    private Long userId;

    @Schema(description = "用户名")
    @Size(max=255, message="用户名长度不能超过255个字符")
    private String username;

    @Schema(description = "联系方式")
    @Size(max=255, message="联系方式长度不能超过255个字符")
    private String mobile;

    @Schema(description = "订单状态（1:未支付 2：已支付 3：已发货 4：已完成 5：已取消）")
    private Integer status;

    @Schema(description = "地区（省市区）")
    private List<String> area;

    @Schema(description = "地址")
    @Size(max=255, message="地址长度不能超过255个字符")
    private String address;

    @Schema(description = "运送人员")
    private Long courierId;
    private String courierName;
    @Schema(description = "花费的积分")
    private BigDecimal totalPoints;


}
